package cn.damai.mine.classloading;

public class DeadLoopClass {
	
	//类的初始化顺序	静态变量->静态初始化代码块->静态方法->变量->初始化块->构造器
	
	//对于static代码段（而不是static函数），会在这个类第一次被实例化的时候执行到，所以如果A中有static{} 那么其中的代码会由于A被JVM实例化而立即执行，然后才会执行main()
	
	static {
		if (true) {
			System.out.println(Thread.currentThread()+" init DeadLoopClass!");
			/*while (true) {
			}*/
		}
	}
	
	public static void getSomthing(){
		System.out.println("method getSomthing execute");
	}
	
	public static void main(String[] args) {
		
		Runnable script = new Runnable() {
			
			@Override
			public void run() {
				System.out.println(Thread.currentThread() + " start");
				/*DeadLoopClass loop = new DeadLoopClass();//对类进行初始化
				System.out.println(Thread.currentThread() + " run over");*/
			}
		};
		
		Thread th1 = new Thread(script);
		Thread th2 = new Thread(script);
		
		th1.start();
//		th2.start();
	}

}
